課程資訊
課程名稱
計算機結構
Computer Architecture 
開課學期
112-1 
授課對象
資訊工程學系  
授課教師
楊佳玲 
課號
CSIE3340 
課程識別碼
902 46100 
班次
02 
學分
3.0 
全/半年
半年 
必/選修
必帶 
上課時間
星期二2,3,4(9:10~12:10) 
上課地點
資104 
備註
限本系所學生(含輔系、雙修生) 且 限學士班三年級以上 且 限學號雙號
總人數上限:80人 
 
課程簡介影片
 
核心能力關聯
核心能力與課程規劃關聯圖
課程大綱
為確保您我的權利,請尊重智慧財產權及不得非法影印
課程概述

**本課程目前為實體上課,視疫情變化而調整。期中與期末考試將以實體進行**
**未選到課的學生,可來信申請旁聽,上網觀看課程錄影**

**因疫情理由無法實體上課者,遠距上課的網址(Cisco Webex):
https://ntucc.webex.com/ntucc/j.php?MTID=m02c5b882b2074d0402094b3450c1467a

本課程概括計算機系統硬體及軟體運作的基礎觀念。這是一個範圍很大、內容很多的課程,課程裡只用到基本的數學,沒有幾個小學生沒看過的公式,課程的重點在告訴各位,計算機系統在過去四十年為什麼能突飛猛進? 為何能不斷地以幾何級數增快他的運算速度? 過程中遇到過甚麼難題和挑戰? 計算機結構專家(computer architects),是如何運算他們的經驗和智慧,去分析和解決問題?

這些經驗和智慧,至今還不斷在迅速成長與累積,在現今台灣資訊電子業必須從代工產業轉變升級為創新系統設計產業的趨勢裡,重要性與日俱增。Computer architects在台灣未來資訊電子產業中,勢必扮演舉足輕重的角色。身為【資訊工程】專業的同學們,學好計算機結構,可以清楚知道電腦的運作原理,軟硬體各部分的機能,軟硬體模組之間的互動和影響,以至於能理解行動裝置和雲端系統的來龍去脈,進而學習如何針對特定應用設計出最佳的計算機系統。

這門課程是資工系大學部學生的必修課程,也是許多進階課程的基礎。這們課程中,可以學習的東西很多,在大學部的課程中,學生由了解指令集架構(instruction set architecture)的設計開始,去分辨簡單指令集電腦(RISC)和複雜指令集電腦(CISC)的不同與優劣之處。進一步再去學習電腦中各個部份的設計原理,各個部份之間的相互關係,以及電腦整體運作的效能。

這門課對於有興趣修習進階的電腦系統設計、高等作業系統核心運作、平行與分散式系統,以及實際改進電腦系統應用,都有很大的助益。 

課程目標
1. 以組合語言去深入認識電腦硬體與軟體的運作介面。
2. 了解電腦中的主要組件的設計及運作方式。
3. 熟悉CPU內部處理指令的管線以及記憶體的的架構。
4. 對於電腦系統架構,包括多核心處理機、網路、輸出入週邊裝置等之構成與相互關係。 
課程要求
修課前,學生必須先對於下列項目有足夠了解:
- 組合語言與C語言。
- 計算機概論。
- 數位設計。

每位學生線上繳交必須使用電腦的作業以及上課小考(約佔50%)。參加實體期中考與期末考(合計50%)。以上的成績計算方式,在課程進行中可能視狀況而有所修改,教授保有修改的權利。 
預期每週課後學習時數
 
Office Hours
備註: Wednesday 10:00~12:00 
指定閱讀
 
參考書目
 
評量方式
(僅供參考)
   
課程進度
週次
日期
單元主題
Week 1
2023/09/05  Course Introduction 
Week 2
2023/09/12  Computing Platform & Evaluation Metrics 
Week 3
2023/09/19  Instruction Set Architecture (I) 
Week 4
2023/09/26  Instruction Set Architecture (II) 
Week 5
2023/10/03  Linker-Loader
Single-Cycle Datapath & Control 
Week 6
2023/10/10  Holiday 
Week 7
2023/10/17  Pipeline (I) & Verilog Tutorial 
Week 8
2023/10/24  Midterm Exam  
Week 9
2023/10/31  Pipeline (II) 
Week 10
2023/11/07  Pipeline (III) 
Week 11
2023/11/14  Memory Hierarchy (I) 
Week 12
2023/11/21  Memory Hierarchy (II) 
Week 13
2023/11/28  Virtual Memory 
Week 14
2023/12/05  Multiprocessor (I) 
Week 15
2023/12/12  Multiprocessor (II) 
Week 16
2023/12/19  Final Exam